//
// Created by fanghr on 17-12-24.
//

#ifndef PROJECT_CAM_DOUBLEMAT_H
#define PROJECT_CAM_DOUBLEMAT_H

#include "cam_singleMat.h"

class cam_original_Mat {
public:
    struct table_t {
        cam_singleMat left, right, middle;

        friend class boost::serialization::access;

        template<class Archive>
        void serialize(Archive &ar, const unsigned int) {
            ar & left & right & middle;
        }
    };

private:
    friend class boost::serialization::access;

    table_t table;

    template<class Archive>
    void serialize(Archive &ar, const unsigned int) {
        ar & table;
    }

public:
    cam_original_Mat() {}

    cam_original_Mat(cam_singleMat left, cam_singleMat middle, cam_singleMat right) {
        table.left = left;
        table.middle = middle;
        table.right = right;
    }

    table_t get() {
        return table;
    }
};


#endif //PROJECT_CAM_DOUBLEMAT_H
